[跪求高手]急~~两道VB编程题的调试..

来源:百度知道 编辑:UC知道 时间:2024/05/06 19:02:24
第一题.编写Command1的Click事件,在窗体上显示如图所示图案.
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
---------------------------------------
这题的问题是我在生成EXE文件了以后它的图案不知道怎么的就变形了..所以很纠结...而在非EXE文件时它的图案是对的..
("*"不知道为什么在生成EXE以后变成了"x"号)

我编的程序代码:
Private Sub Command1_Click()
Dim i As Integer, J As Integer
Cls
For i = 1 To 10
Print Spc(20 - i);
For J = 1 To i
Print "*";
Next J
For J = i - 1 To 1 Step -1
Print "*";
Next J
Print
Next i

End Sub

Private Sub Form_Load()
Command1.Caption = "显示"
End Sub

============================================
第二题.设计程序,设计界面如图所示(图我放不过来).包括2个标签,2个文本框,3个单选按钮,1个命令按钮.其中要求Text2(处理结果)不能输入数据.当单击单选按钮时,应清除Text2的内容.单击“确定”,将根据单选

Private Sub Form_click()
Dim i As Integer
For i = 1 To 5
For j = 1 To 2 * i - 1
Print "*";
Next j
Print
Next i

End Sub
这是第一道题..把i的上限改成你想要的个数/2就行
第二道我也不知道..没学到图片处理.

第一题测试没有问题。。。测试通过
第二题
Else
Sum = 1
S = Val(Text1.Text)
For i = 1 To m
y = Mid(S, i, 1)
Sum = Sum * y
Next
Text2.Text = Sum
只要执行else就会出问题
比如你的647473这个数,执行的时候m=7,但是y = Mid(S, i, 1) 执行i=7 的时候y为空,所以Sum = Sum * y 这会报错,我没看程序功能,你自己调试下,还有当输入数据过大时会出现溢出现象,原因是你定义的变量都是有范围限制的,但数据超出范围就溢出

一、"*"变成"x" 可能是字体的问题,检查一下form1的font属性,更改了再试。

二、数字太大会出错,每种数据类型都有一定的范围的。